<?php
/**
 * XiaoYuanMenSuo-PHP
 * ==================================================================
 * CopyRight © 2017-2099 广州米袋软件有限公司
 * 官网地址：http://www.mdsoftware.cn
 * 售后技术支持：15017566075
 * ------------------------------------------------------------------
 * 这不是一个自由软件！未经本公司授权您只能在不用于商业目的的前提下
 * 对本程序代码进行修改和使用；不允许对本程序代码以任何目的的再发布。
 * ==================================================================
 *
 * @Author ZHC(codecookies@163.com)
 * @Date 2021-12-23 15:17 星期四
 * @Version 1.0
 */

namespace app\common\service\wxapi;


use EasyWeChat\Factory;
use think\facade\Env;

class MiniProgram
{
    private $app;

    public function __construct()
    {
        $config = [
            'app_id' => config('apiwechat.APP_ID'),
            'secret' => config('apiwechat.APP_SECRET'),

            // 下面为可选项
            // 指定 API 调用返回结果的类型：array(default)/collection/object/raw/自定义类名
            'response_type' => 'array',

            'log' => [
                'level' => 'debug',
                'file' => Env::get('runtime_path') . 'wechat' . DIRECTORY_SEPARATOR . 'wechat.log',
            ],
        ];

        $this->app = Factory::miniProgram($config);
    }

    public function code2Openid($code)
    {
        return $this->app->auth->session($code);
    }

    public function decryptData($session, $iv, $encryptedData)
    {
        return $this->app->encryptor->decryptData($session, $iv, $encryptedData);
    }
}